1.3.3. Other Comments
RFCs tend to describe the expected behaviour, but leave the implementations up to the authors. This is understandable, but when all the developers have to reinvent the processing algorithms you get flaky results. I notice that the experience with TCP and DNS, for example, has led to RFCs that are increasingly specific in giving guidance to implementors.
This is the main reason I haven’t implemented VTIMEZONE
yet. With the exception of RRULE
(see comment below), most of the rest of iCalendar is a fairly straight forward task of writing a codec for the data structures. Everything I need to know is in the RFCs. If there was a description of how to implement VTIMEZONE
, I would have done it.
I strongly suggest that the CalConnect group go to greater effort to offer implementation guidance to further interop. This could include pseudo-code processing models, warnings about problems and corner cases to look out for, and should particularly involve test suites. RRULE
, for example, would be unimplementable without its extensive set of examples. iTIP needs a similar suite of examples, too.